package com.spring.boot.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.spring.boot.entity.User;
import com.spring.boot.vo.ChangePasswordVO;
import com.spring.boot.vo.QueryRequest;

import java.util.Map;

/**
 * @Author: Daniel ZTQ
 * @Date: 2021/01/01 22:59
 * @Description: TODO 用户信息业务逻辑接口层
 */
public interface UserService extends IService<User> {
    /**
     * @param user 用户对象
     * @return map
     * @description: 注册
     */
    Map<String, Object> addUser(User user);

    /**
     * @description: 登录
     * * @param user 用户对象
     * * @return map
     */
    Map<String, Object> longin(String idCard, String password);

    /**
     * @param uid 用户id
     * @return map
     * @description: 删除用户(批量)
     */
    Map<String, Object> deleteBatchIdsUser(String uid);

    /**
     * @param user 用户对象
     * @return map
     * @description: 修改用户
     */
    Map<String, Object> updateUser(User user);

    /**
     * @description: 筛选查询用户
     * * @param user 用户对象
     * * @return map
     */
    Map<String, Object> findUserList(QueryRequest queryRequest, User user);

    /**
     * @param uid 用户id
     * @return map
     * @description: 查看个人信息
     */
    Map<String, Object> getPersonalInformationByUid(String uid);

    /**
     * @param  changePasswordVO  修改密码对象
     * @return map
     * @description: 修改登录密码
     */
    Map<String, Object> changePassword(ChangePasswordVO changePasswordVO);

    /**
     * @param  role  用户角色
     * @return map
     * @description: 查询菜单
     */
    Map<String, Object> findMenu(String role);

}
